www.gusucode.com > Weighted Differential Evolution Algorithm (WDE) > Weighted Differential Evolution Algorithm (WDE)/cc_wde/3D-baseline adjustment/my_3Dgps_network.m

    %{
% GEOMETRIC OPTIMIZATION PROBLEM ;
% 3D BASELINE ADJUSTMENT - EXPERIMENTAL HEURISTIC TECHNIQUE
% 100-points based 3D network has been adjusted using baselines.
% private use only
% sol : adjusted coordinates
% v : computed baselines
% dxdydz : observed baselines (see the code, line 25)


load gps_3Dnet_data mydata
algo_wde('my_3Dgps_network',mydata,5,100*3,0,1,3e6)
[out,sol,v] = my_3Dgps_network(globalminimizer,mydata)






%}

function [out,sol,v] = my_3Dgps_network(X,mydata)
n=size(X,1);
out=size(n,1);
data=mydata.data;
dxdydz=mydata.dxdydz;
j=mydata.connections;
N=size(data,1);
for i=1:n
   sol=reshape(X(i,:),N,3);
   dxdydz0=sol(j(:,1),:)-sol(j(:,2),:);    
   v=abs(dxdydz0-dxdydz);
   v=v-mean(v); % save centeroid of geometry
   err=sum(sum ( v .* v) ) ;
   out(i)=err;    
end